Skip to content

Upgrade SIL.ReleaseTasks and System.ServiceModel dependencies; replace net461 with net462 - #161

Merged
tombogle merged 4 commits into
masterfrom
security/upgrade-deps-net462
Sep 3, 2026
Merged

Upgrade SIL.ReleaseTasks and System.ServiceModel dependencies; replace net461 with net462#161
tombogle merged 4 commits into
masterfrom
security/upgrade-deps-net462

Conversation

@tombogle

@tombogle tombogle commented Aug 31, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Upgrades SIL.ReleaseTasks (2.5.0 → 3.2.1) and System.ServiceModel.Http/System.ServiceModel.Primitives (6.2.0 → 8.1.2) to remove vulnerable transitive dependencies.
  • BREAKING CHANGE: Replaces the net461 target framework with net462 across all projects. The SIL.ReleaseTasks upgrade transitively raises the resolved version of System.Resources.Extensions, which no longer ships a net461-specific assembly, so net461 is no longer a supported or tested target. Consumers who need net461 should stay on the last release built for it, or upgrade to at least net462.
  • Fixes API incompatibilities in the internal BingTranslator/generated WCF proxy code surfaced by the System.ServiceModel upgrade (removed properties no longer present in the modern package, and config-name-based ClientBase constructors now scoped to NETFRAMEWORK builds only).
  • See CHANGELOG.md for full details.

Test plan

  • dotnet build L10NSharp.sln succeeds with 0 errors/warnings related to these changes across all target frameworks (net462, net48, net8.0, net8.0-windows, netstandard2.0)
  • Verified SampleApp.exe launches successfully for net462, net48, and net8.0-windows
  • CI passes on this PR

🤖 Generated with Claude Code


This change is Reviewable

@tombogle
tombogle requested a review from imnasnainaec August 31, 2026 18:22
@tombogle tombogle self-assigned this Aug 31, 2026
@github-actions

github-actions Bot commented Aug 31, 2026

Copy link
Copy Markdown

Test Results

    7 files  ±0  144 suites  ±0   23s ⏱️ ±0s
223 tests ±0  218 ✔️ ±0    5 💤 ±0  0 ±0 
858 runs  ±0  843 ✔️ ±0  15 💤 ±0  0 ±0 

Results for commit 6d5ee69. ± Comparison against base commit 60c6876.

♻️ This comment has been updated with latest results.

@imnasnainaec imnasnainaec left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@imnasnainaec reviewed 15 files and all commit messages.
Reviewable status: :shipit: complete! all files reviewed, all discussions resolved (waiting on tombogle).

@imnasnainaec imnasnainaec left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@imnasnainaec reviewed 8 files and all commit messages, and made 1 comment.
Reviewable status: :shipit: complete! all files reviewed, all discussions resolved (waiting on tombogle).


src/L10NSharp.Windows.Forms/Service References/BingTranslatorService/Reference.cs line 51 at r2 (raw file):

        // exactly as it did before. If you regenerate this file, reapply this guard, or — better —
        // finish the replacement of BingTranslator/this proxy with a plain REST client (see
        // https://github.com/sillsdev/l10nsharp/issues/163), which removes this file entirely.

Oh, that's awkward.

tombogle and others added 4 commits September 3, 2026 14:54
…encies; replace net461 with net462

Upgrades SIL.ReleaseTasks (2.5.0 -> 3.2.1) and System.ServiceModel.Http/Primitives
(6.2.0 -> 8.1.2) to remove vulnerable transitive dependencies.

BREAKING CHANGE: The SIL.ReleaseTasks upgrade transitively raises the resolved
version of System.Resources.Extensions, which no longer ships a net461-specific
assembly, so net461 is no longer a supported or tested target framework.
Replaced net461 with net462 across all projects.

Also fixes API incompatibilities in the internal BingTranslator/generated WCF
proxy surfaced by the System.ServiceModel upgrade.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…o a patched version

Bumps GitVersion.MsBuild, Microsoft.SourceLink.GitHub, JetBrains.Annotations,
SIL.ReleaseTasks (3.2.1 -> 3.3.0), and the NUnit/Test SDK packages. All of these
are PrivateAssets="all" build/test-only dependencies with no effect on consumers.

Also adds a direct System.Security.Cryptography.Xml 8.0.4 reference to
L10NSharp.Windows.Forms: System.ServiceModel.Primitives 8.1.2 otherwise resolves
a vulnerable 8.0.2 of that package transitively on net8.0-windows, and a direct
PackageReference overrides it.

No public API or supported-framework changes.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…asks CHANGELOG note

Adds a comment to the generated BingTranslatorService/Reference.cs warning that
its hand-added #if NETFRAMEWORK guard will be silently dropped if the WCF proxy
is regenerated, reintroducing the net8.0-windows build break it fixes. Points to
issue #163 as the real long-term fix (removing this generated proxy entirely).

Also corrects the CHANGELOG's SIL.ReleaseTasks security note: 3.3.0 does not
cleanly remove a vulnerable dependency as previously stated. It reintroduces a
build-time-only, non-exploitable dependency on a vulnerable Newtonsoft.Json via
a temporary SIL.Core revert (see sillsdev/SIL.BuildTasks#88).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@tombogle
tombogle force-pushed the security/upgrade-deps-net462 branch from 7236466 to 6d5ee69 Compare September 3, 2026 18:59

@imnasnainaec imnasnainaec left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@imnasnainaec reviewed 1 file and all commit messages.
Reviewable status: :shipit: complete! all files reviewed, all discussions resolved (waiting on tombogle).

@tombogle tombogle left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@tombogle made 1 comment.
Reviewable status: :shipit: complete! all files reviewed, all discussions resolved (waiting on tombogle).


src/L10NSharp.Windows.Forms/Service References/BingTranslatorService/Reference.cs line 51 at r2 (raw file):

Previously, imnasnainaec (D. Ror.) wrote…

Oh, that's awkward.

True, but in a day or two this code should be gone.

@tombogle
tombogle merged commit b67ed52 into master Sep 3, 2026
7 checks passed
@tombogle
tombogle deleted the security/upgrade-deps-net462 branch September 3, 2026 19:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants